package com.xydtech.ecard.busi.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.xydtech.common.annotation.Excel;
import com.xydtech.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 电子名片业务填报对公类信息对象 ecard_busi_report_public
 *
 * @author yuzhiguo
 * @date 2024-09-26 下午1:12
 */
public class EcardApiBusiReportPublic extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long id;

    /** 企业名称 */
    @Excel(name = "企业名称")
    private String pubEntName;

    /** 统一社会信用代码 */
    @Excel(name = "统一社会信用代码")
    private String pubCreditCode;

    /** 联系人 */
    @Excel(name = "联系人")
    private String pubContacts;

    /** 联系方式 */
    @Excel(name = "联系方式")
    private String pubPhone;

    /** 结汇金额 */
    @Excel(name = "结汇金额")
    private Long pubSettlementAmount;

    /** 营销日期 */
    @Excel(name = "营销日期")
    private String pubMarketingDate;

    /** 贷款类型 */
    @Excel(name = "贷款类型")
    private String pubLoanType;

    /** 贷款金额 */
    @Excel(name = "贷款金额")
    private Long pubLoanAmount;

    /** 贷款期限 */
    @Excel(name = "贷款期限")
    private String pubLoanTerm;

    /** 贷款利率（%） */
    @Excel(name = "贷款利率")
    private Float pubLoanRate;

    /** 存款类型 */
    @Excel(name = "存款类型")
    private String pubDepositType;

    /** 存款金额 */
    @Excel(name = "存款金额")
    private Long pubDepositAmount;

    /** 存款期限 */
    @Excel(name = "存款期限")
    private String pubDepositTerm;

    /** 营销经理 */
    private Long creatorId;

    /** 员工号 */
    @Excel(name = "员工号")
    private String userCode;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date creationTime;

    /** 归属机构 */
    private Long deptId;

    /** 管户人id */
    @Excel(name = "管户人id")
    private Long managementPersonnelId;

    /** 状态0停用,1启用 */
    @Excel(name = "状态0停用,1启用")
    private Integer state;

    /** 业务配置主键id */
    private String configId;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setPubEntName(String pubEntName)
    {
        this.pubEntName = pubEntName;
    }

    public String getPubEntName()
    {
        return pubEntName;
    }
    public void setPubCreditCode(String pubCreditCode)
    {
        this.pubCreditCode = pubCreditCode;
    }

    public String getPubCreditCode()
    {
        return pubCreditCode;
    }
    public void setPubContacts(String pubContacts)
    {
        this.pubContacts = pubContacts;
    }

    public String getPubContacts()
    {
        return pubContacts;
    }
    public void setPubPhone(String pubPhone)
    {
        this.pubPhone = pubPhone;
    }

    public String getPubPhone()
    {
        return pubPhone;
    }
    public void setPubSettlementAmount(Long pubSettlementAmount)
    {
        this.pubSettlementAmount = pubSettlementAmount;
    }

    public Long getPubSettlementAmount()
    {
        return pubSettlementAmount;
    }
    public void setPubMarketingDate(String pubMarketingDate)
    {
        this.pubMarketingDate = pubMarketingDate;
    }

    public String getPubMarketingDate()
    {
        return pubMarketingDate;
    }
    public void setPubLoanType(String pubLoanType)
    {
        this.pubLoanType = pubLoanType;
    }

    public String getPubLoanType()
    {
        return pubLoanType;
    }
    public void setPubLoanAmount(Long pubLoanAmount)
    {
        this.pubLoanAmount = pubLoanAmount;
    }

    public Long getPubLoanAmount()
    {
        return pubLoanAmount;
    }
    public void setPubLoanTerm(String pubLoanTerm)
    {
        this.pubLoanTerm = pubLoanTerm;
    }

    public String getPubLoanTerm()
    {
        return pubLoanTerm;
    }
    public void setPubLoanRate(Float pubLoanRate)
    {
        this.pubLoanRate = pubLoanRate;
    }

    public Float getPubLoanRate()
    {
        return pubLoanRate;
    }
    public void setPubDepositType(String pubDepositType)
    {
        this.pubDepositType = pubDepositType;
    }

    public String getPubDepositType()
    {
        return pubDepositType;
    }
    public void setPubDepositAmount(Long pubDepositAmount)
    {
        this.pubDepositAmount = pubDepositAmount;
    }

    public Long getPubDepositAmount()
    {
        return pubDepositAmount;
    }
    public void setPubDepositTerm(String pubDepositTerm)
    {
        this.pubDepositTerm = pubDepositTerm;
    }

    public String getPubDepositTerm()
    {
        return pubDepositTerm;
    }

    public void setCreatorId(Long creatorId)
    {
        this.creatorId = creatorId;
    }

    public Long getCreatorId()
    {
        return creatorId;
    }
    public void setUserCode(String userCode)
    {
        this.userCode = userCode;
    }

    public String getUserCode()
    {
        return userCode;
    }
    public void setCreationTime(Date creationTime)
    {
        this.creationTime = creationTime;
    }

    public Date getCreationTime()
    {
        return creationTime;
    }
    public void setDeptId(Long deptId)
    {
        this.deptId = deptId;
    }

    public Long getDeptId()
    {
        return deptId;
    }
    public void setManagementPersonnelId(Long managementPersonnelId)
    {
        this.managementPersonnelId = managementPersonnelId;
    }

    public Long getManagementPersonnelId()
    {
        return managementPersonnelId;
    }
    public void setState(Integer state)
    {
        this.state = state;
    }

    public Integer getState()
    {
        return state;
    }

    public String getConfigId() {
        return configId;
    }

    public void setConfigId(String configId) {
        this.configId = configId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("pubEntName", getPubEntName())
                .append("pubCreditCode", getPubCreditCode())
                .append("pubContacts", getPubContacts())
                .append("pubPhone", getPubPhone())
                .append("pubSettlementAmount", getPubSettlementAmount())
                .append("pubMarketingDate", getPubMarketingDate())
                .append("pubLoanType", getPubLoanType())
                .append("pubLoanAmount", getPubLoanAmount())
                .append("pubLoanTerm", getPubLoanTerm())
                .append("pubLoanRate", getPubLoanRate())
                .append("pubDepositType", getPubDepositType())
                .append("pubDepositAmount", getPubDepositAmount())
                .append("pubDepositTerm", getPubDepositTerm())
                .append("creatorId", getCreatorId())
                .append("userCode", getUserCode())
                .append("creationTime", getCreationTime())
                .append("deptId", getDeptId())
                .append("managementPersonnelId", getManagementPersonnelId())
                .append("state", getState())
                .append("remark", getRemark())
                .append("configId", getConfigId())
                .toString();
    }
}
